home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-08-16 | 9.5 KB | 401 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: SLObjReg.xh.
- * Generated using:
- * SOM Precompiler somipc: 2.18
- * SOM Emitter emitxh.dll: 2.33
- */
-
- /*
- *
- * File: SLObjReg.idl
- *
- * Contains: Interface for OObjectRegistry class
- *
- * Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- *
- */
-
-
- #ifndef SOM_FW_OObjectRegistry_xh
- #define SOM_FW_OObjectRegistry_xh
-
- class FW_OObjectRegistry;
-
- #define FW_OObjectRegistry_MajorVersion 1
- #define FW_OObjectRegistry_MinorVersion 0
-
- /*
- * Passthru lines: File: "C.xh", "before"
- */
-
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_SOMObject_xh
- #include <somobj.xh>
- #endif
-
- #ifndef FW_OObjectRegistry_API
- #define FW_OObjectRegistry_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- class FW_OObjectRegistry;
- class FW_OBasicObjectRegistry;
- typedef
- long FW_ObjectRegistry_ID;
- #define FW_kNotInRegistry -1 /* -1 */
-
- /*
- * End of user-defined types.
- */
-
- #ifdef OLDIBMSOMAPISUPPORT
- #define FW_OObjectRegistryCClassData FW_OObjectRegistryClassData
- #define FW_OObjectRegistryNewClass(major,minor) somNewVersionedClassReference(FW_OObjectRegistry,major,minor)
- #endif
-
- /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
- #define FW_OObjectRegistryMetaClass SOMClass
-
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=power
- #endif
-
- /* The API to the FW_OObjectRegistry class object, and the methods it introduces. */
- SOMEXTERN struct FW_OObjectRegistryClassDataStructure {
- #ifdef OLDIBMSOMAPISUPPORT
- SOMClass *classObject; /* always zero, use somNewClassReference instead */
- #else
- long zero;
- #endif
- somStaticClassInfo *sci;
- somDToken instanceDataToken;
- long reserved [3];
- somMToken somInit;
- somMToken somUninit;
- somMToken RegisterObject;
- somMToken RegisterObjectAndID;
- somMToken LookupByObject;
- somMToken LookupByID;
- } SOMDLINK FW_OObjectRegistryClassData;
-
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=reset
- #endif
-
- #if !defined(FW_OObjectRegistry_Class_Source) && !defined(SOM_Module_slobjreg_Source)
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import list FW_OObjectRegistryClassData
- #endif
- #endif
-
-
- /*
- * -- Typedefs and inline method declarations for left path inherited methods
- * -- are omitted because this compilation had -museinheritedmethods in effect
- */
-
-
- /*
- * -- Typedefs for FW_OObjectRegistry Method Procedures
- */
- SOMEXTERN {
- typedef FW_ObjectRegistry_ID (* SOMLINK somTD_FW_OObjectRegistry_RegisterObject)(FW_OObjectRegistry *somSelf, Environment *ev,
- void* object);
- typedef void (* SOMLINK somTD_FW_OObjectRegistry_RegisterObjectAndID)(FW_OObjectRegistry *somSelf, Environment *ev,
- void* object,
- FW_ObjectRegistry_ID id);
- typedef FW_ObjectRegistry_ID (* SOMLINK somTD_FW_OObjectRegistry_LookupByObject)(FW_OObjectRegistry *somSelf, Environment *ev,
- void* object);
- typedef void* (* SOMLINK somTD_FW_OObjectRegistry_LookupByID)(FW_OObjectRegistry *somSelf, Environment *ev,
- FW_ObjectRegistry_ID id);
- }
-
- #endif /* FW_OObjectRegistry_API */
-
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for FW_OObjectRegistry
- */
- class FW_OObjectRegistry : public SOMObject
- {
- public:
-
- // FW_OObjectRegistry::new registers use of the class object, and then uses somNew
- // to allocate memory and load the object method table pointer.
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- // Allocate memory using the default allocator for FW_OObjectRegistry, and
- // clear mem & set method table pointer, call basic initialization
- #ifdef SOMCHKNULL
- void * __somResult = (void *)
- somNewObject(FW_OObjectRegistry);
- SOMCHKNULL(__somResult);
- return __somResult;
- #else
- return (void*) somNewObject(FW_OObjectRegistry);
- #endif
- }
-
- // FW_OObjectRegistry::delete uses the default deallocator for the object's class.
- void operator delete(void * obj)
- {
- if (obj) {
- SOM_Resolve(obj,SOMObject,somFree)
- ( (SOMObject*) obj );
- }
- }
-
- /* method: RegisterObject */
- FW_ObjectRegistry_ID RegisterObject(Environment *ev,
- void* object)
- {
- #ifdef SOMCHKEXCEPT
- FW_ObjectRegistry_ID __somResult =
- SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,RegisterObject)
- (this,ev,object);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,RegisterObject)
- (this,ev,object);
- #endif
- }
-
- /* method: RegisterObjectAndID */
- void RegisterObjectAndID(Environment *ev,
- void* object,
- FW_ObjectRegistry_ID id)
- {
- SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,RegisterObjectAndID)
- (this,ev,object,id);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: LookupByObject */
- FW_ObjectRegistry_ID LookupByObject(Environment *ev,
- void* object)
- {
- #ifdef SOMCHKEXCEPT
- FW_ObjectRegistry_ID __somResult =
- SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,LookupByObject)
- (this,ev,object);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,LookupByObject)
- (this,ev,object);
- #endif
- }
-
- /* method: LookupByID */
- void* LookupByID(Environment *ev,
- FW_ObjectRegistry_ID id)
- {
- #ifdef SOMCHKEXCEPT
- void* __somResult =
- SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,LookupByID)
- (this,ev,id);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,FW_OObjectRegistry,FW_OObjectRegistry,LookupByID)
- (this,ev,id);
- #endif
- }
-
- }; /* FW_OObjectRegistry */
-
-
-
- #endif /* SOM_FW_OObjectRegistry_xh */
-
- #ifndef SOM_FW_OBasicObjectRegistry_xh
- #define SOM_FW_OBasicObjectRegistry_xh
-
- class FW_OBasicObjectRegistry;
-
- #define FW_OBasicObjectRegistry_MajorVersion 1
- #define FW_OBasicObjectRegistry_MinorVersion 0
-
- /*
- * Passthru lines: File: "C.xh", "before"
- */
-
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_FW_OObjectRegistry_xh
- #include <SLObjReg.xh>
- #endif
-
- #ifndef FW_OBasicObjectRegistry_API
- #define FW_OBasicObjectRegistry_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
-
- /*
- * -- Share exact same alignment between 68k & PowerPC.
- * -- User to add padding to idl as desired for better alignment.
- */
- #if powerc
- # pragma options align=mac68k
- #endif
- typedef
- struct FW_OBasicObjectRegistry_SAssociation {
- FW_ObjectRegistry_ID fID;
-
- /*
- * object id
- */
- void* fObject;
-
- /*
- * object address
- */
- } FW_OBasicObjectRegistry_SAssociation;
- #if powerc
- # pragma options align=reset
- #endif
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_SAssociation
- #ifdef SAssociation
- #undef SAssociation
- #define SOMTGD_SAssociation 1
- #else
- #define SAssociation FW_OBasicObjectRegistry_SAssociation
- #endif /* SAssociation */
- #endif /* SOMTGD_SAssociation */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
-
- /*
- * End of user-defined types.
- */
-
- #ifdef OLDIBMSOMAPISUPPORT
- #define FW_OBasicObjectRegistryCClassData FW_OBasicObjectRegistryClassData
- #define FW_OBasicObjectRegistryNewClass(major,minor) somNewVersionedClassReference(FW_OBasicObjectRegistry,major,minor)
- #endif
-
- /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
- #define FW_OBasicObjectRegistryMetaClass SOMClass
-
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=power
- #endif
-
- /* The API to the FW_OBasicObjectRegistry class object, and the methods it introduces. */
- SOMEXTERN struct FW_OBasicObjectRegistryClassDataStructure {
- #ifdef OLDIBMSOMAPISUPPORT
- SOMClass *classObject; /* always zero, use somNewClassReference instead */
- #else
- long zero;
- #endif
- somStaticClassInfo *sci;
- somDToken instanceDataToken;
- long reserved [3];
- } SOMDLINK FW_OBasicObjectRegistryClassData;
-
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=reset
- #endif
-
- #if !defined(FW_OBasicObjectRegistry_Class_Source) && !defined(SOM_Module_slobjreg_Source)
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import list FW_OBasicObjectRegistryClassData
- #endif
- #endif
-
-
- /*
- * -- Typedefs and inline method declarations for left path inherited methods
- * -- are omitted because this compilation had -museinheritedmethods in effect
- */
-
-
- /*
- * -- Typedefs for FW_OBasicObjectRegistry Method Procedures
- */
- SOMEXTERN {
- }
-
- #endif /* FW_OBasicObjectRegistry_API */
-
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for FW_OBasicObjectRegistry
- */
- class FW_OBasicObjectRegistry : public FW_OObjectRegistry
- {
- public:
-
- // FW_OBasicObjectRegistry::new registers use of the class object, and then uses somNew
- // to allocate memory and load the object method table pointer.
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- // Allocate memory using the default allocator for FW_OBasicObjectRegistry, and
- // clear mem & set method table pointer, call basic initialization
- #ifdef SOMCHKNULL
- void * __somResult = (void *)
- somNewObject(FW_OBasicObjectRegistry);
- SOMCHKNULL(__somResult);
- return __somResult;
- #else
- return (void*) somNewObject(FW_OBasicObjectRegistry);
- #endif
- }
-
- // FW_OBasicObjectRegistry::delete uses the default deallocator for the object's class.
- void operator delete(void * obj)
- {
- if (obj) {
- SOM_Resolve(obj,SOMObject,somFree)
- ( (SOMObject*) obj );
- }
- }
-
- }; /* FW_OBasicObjectRegistry */
-
-
-
- #endif /* SOM_FW_OBasicObjectRegistry_xh */
-